$a = @(
  @(0,1),
  @("b", "c"),
  @(Get-Process)
)

"`$a rank: $($a.Rank)"
"`$a length: $($a.Length)"
"`$a[2] length: $($a[2].Length)"
# 这个在PowerShell里面运行才会有效果
# Visual Studio Code 的运行与测试并不会显示
# Process $a[2][1]: amdfendrsr
"Process `$a[2][1]: $($a[2][1].ProcessName)"

[string[,]]$rank2 = [string[,]]::New(3,2)

$rank2.Rank

$rank2.Length

$rank2[0,0] = 'a'
$rank2[0,1] = 'b'
$rank2[1,0] = 'c'
$rank2[1,1] = 'd'
$rank2[2,0] = 'e'
$rank2[2,1] = 'f'

# 访问多维数组
$rank2[1,1]

$a = "red",$true
$b = (New-Object 'int[,]' 2,2)
$b[0,0] = 10
$b[0,1] = 20
$b[1,0] = 30
$b[1,1] = 40

$c = $a + $b

$a.GetType().Name
$b.GetType().Name
$c.GetType().Name

$c